home *** CD-ROM | disk | FTP | other *** search
/ Delphi Magazine Collection 2001 / Delphi Magazine Collection 20001 (2001).iso / DISKS / Issue40 / Clinic / ScrollingDBGrid.pas < prev    next >
Encoding:
Pascal/Delphi Source File  |  1998-09-29  |  944 b   |  46 lines

  1. unit ScrollingDBGrid;
  2.  
  3. interface
  4.  
  5. uses
  6.   Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  7.   Grids, DBGrids;
  8.  
  9. type
  10.   TScrollingDBGrid = class(TDBGrid)
  11.   public
  12.     procedure WMHScroll(var Msg: TWMHScroll);
  13.       message wm_HScroll;
  14.     procedure WMVScroll(var Msg: TWMVScroll);
  15.       message wm_VScroll;
  16.   end;
  17.  
  18. procedure Register;
  19.  
  20. implementation
  21.  
  22. procedure Register;
  23. begin
  24.   RegisterComponents('Samples', [TScrollingDBGrid]);
  25. end;
  26.  
  27. { TScrollingDBGrid }
  28.  
  29. procedure TScrollingDBGrid.WMHScroll(var Msg: TWMHScroll);
  30. begin
  31.   inherited;
  32.   if Msg.ScrollCode = sb_ThumbTrack then
  33.     Perform(wm_HScroll,
  34.       MakeLong(sb_ThumbPosition, Msg.Pos), Msg.ScrollBar)
  35. end;
  36.  
  37. procedure TScrollingDBGrid.WMVScroll(var Msg: TWMVScroll);
  38. begin
  39.   inherited;
  40.   if Msg.ScrollCode = sb_ThumbTrack then
  41.     Perform(wm_VScroll,
  42.       MakeLong(sb_ThumbPosition, Msg.Pos), Msg.ScrollBar)
  43. end;
  44.  
  45. end.
  46.